<?php
/**
 *
 *
 * @author Zeon <scplay@gmail.com>
 * @date 2019/2/19
 * @copyright PanxSoft Inc.
 */
namespace App\Services\EasySms;


use App\Services\Locale\Language;
use App\Services\MobileApp\AppEnv;

class AliSMSCountry
{
    public static function transByLocale($country_codes)
    {
        if (! Language::isCN(AppEnv::language()->code)) {
            return array_map(function ($country_code) {
                $country_code['cn_name'] = $country_code['country'];
                return $country_code;
            }, $country_codes);
        }

        return $country_codes;
    }

    public static function codes()
    {
        $codes = self::codeMap();

        /**
         * 排序效果，从高位数依次排序 1 > 134 > 15 > 2 > 24 > 277
         */
        usort($codes, function ($map_a, $map_b) {
            $dial_code_a = $map_a['dial_code'];
            $dial_code_b = $map_b['dial_code'];

            $len_a = strlen($dial_code_a);
            $len_b = strlen($dial_code_b);
            $len_short = $len_a > $len_b ? $len_b : $len_a;

            foreach (range(0, $len_short - 1) as $idx) {
                $cmp = $dial_code_a[$idx] - $dial_code_b[$idx];
                if ($cmp !== 0) {
                    return $cmp;
                } elseif ($idx === $len_short - 1) {
                    return $len_a - $len_b;
                }
            }

            return 0;
        });

        return $codes;
    }

    /**
     * @see https://www.aliyun.com/price/detail/dysms?spm=a2c4g.11186623.2.10.110c4c66IhN0pj - aliyun 文档
     *
     * @return array
     */
    public static function codeMap()
    {
        return [
            [
                "country"   => "China",
                "cn_name"   => "中国",
                "code"      => "CN",
                "dial_code" => "86",
                "price"     => "0.010",
            ],
            [
                "country"   => "Afghanistan",
                "cn_name"   => "阿富汗",
                "code"      => "AF",
                "dial_code" => "931",
                "price"     => "0.610",
            ],
            [
                "country"   => "Albania",
                "cn_name"   => "阿尔巴尼亚",
                "code"      => "AL",
                "dial_code" => "355",
                "price"     => "0.651",
            ],
            [
                "country"   => "Algeria",
                "cn_name"   => "阿尔及利亚",
                "code"      => "DZ",
                "dial_code" => "213",
                "price"     => "1.136",
            ],
            [
                "country"   => "American Samoa",
                "cn_name"   => "美属萨摩亚",
                "code"      => "AS",
                "dial_code" => "1684",
                "price"     => "0.754",
            ],
            [
                "country"   => "Andorra",
                "cn_name"   => "安道尔",
                "code"      => "AD",
                "dial_code" => "376",
                "price"     => "0.447",
            ],
            [
                "country"   => "Angola",
                "cn_name"   => "安哥拉",
                "code"      => "AO",
                "dial_code" => "244",
                "price"     => "0.301",
            ],
            [
                "country"   => "Anguilla",
                "cn_name"   => "安圭拉",
                "code"      => "AI",
                "dial_code" => "1264",
                "price"     => "0.312",
            ],
            [
                "country"   => "Antigua and Barbuda",
                "cn_name"   => "安提瓜和巴布达",
                "code"      => "AG",
                "dial_code" => "1268",
                "price"     => "0.536",
            ],
            [
                "country"   => "Argentina",
                "cn_name"   => "阿根廷",
                "code"      => "AR",
                "dial_code" => "54",
                "price"     => "0.207",
            ],
            [
                "country"   => "Armenia",
                "cn_name"   => "亚美尼亚",
                "code"      => "AM",
                "dial_code" => "374",
                "price"     => "0.558",
            ],
            [
                "country"   => "Aruba",
                "cn_name"   => "阿鲁巴",
                "code"      => "AW",
                "dial_code" => "297",
                "price"     => "0.380",
            ],
            [
                "country"   => "Australia",
                "cn_name"   => "澳大利亚",
                "code"      => "AU",
                "dial_code" => "61",
                "price"     => "0.385",
            ],
            [
                "country"   => "Austria",
                "cn_name"   => "奥地利",
                "code"      => "AT",
                "dial_code" => "43",
                "price"     => "0.883",
            ],
            [
                "country"   => "Azerbaijan",
                "cn_name"   => "阿塞拜疆",
                "code"      => "AZ",
                "dial_code" => "994",
                "price"     => "1.003",
            ],
            [
                "country"   => "Bahamas",
                "cn_name"   => "巴哈马",
                "code"      => "BS",
                "dial_code" => "1242",
                "price"     => "0.268",
            ],
            [
                "country"   => "Bahrain",
                "cn_name"   => "巴林",
                "code"      => "BH",
                "dial_code" => "973",
                "price"     => "0.145",
            ],
            [
                "country"   => "Bangladesh",
                "cn_name"   => "孟加拉国",
                "code"      => "BD",
                "dial_code" => "880",
                "price"     => "0.580",
            ],
            [
                "country"   => "Barbados",
                "cn_name"   => "巴巴多斯",
                "code"      => "BB",
                "dial_code" => "1246",
                "price"     => "0.358",
            ],
            [
                "country"   => "Belarus",
                "cn_name"   => "白俄罗斯",
                "code"      => "BY",
                "dial_code" => "375",
                "price"     => "0.504",
            ],
            [
                "country"   => "Belgium",
                "cn_name"   => "比利时",
                "code"      => "BE",
                "dial_code" => "32",
                "price"     => "0.566",
            ],
            [
                "country"   => "Belize",
                "cn_name"   => "伯利兹",
                "code"      => "BZ",
                "dial_code" => "501",
                "price"     => "0.226",
            ],
            [
                "country"   => "Benin",
                "cn_name"   => "贝宁",
                "code"      => "BJ",
                "dial_code" => "229",
                "price"     => "0.398",
            ],
            [
                "country"   => "Bermuda",
                "cn_name"   => "百慕大群岛",
                "code"      => "BM",
                "dial_code" => "1441",
                "price"     => "0.376",
            ],
            [
                "country"   => "Bhutan",
                "cn_name"   => "不丹",
                "code"      => "BT",
                "dial_code" => "975",
                "price"     => "0.264",
            ],
            [
                "country"   => "Bolivia",
                "cn_name"   => "玻利维亚",
                "code"      => "BO",
                "dial_code" => "591",
                "price"     => "0.445",
            ],
            [
                "country"   => "Bosnia and Herzegovina",
                "cn_name"   => "波斯尼亚和黑塞哥维那",
                "code"      => "BA",
                "dial_code" => "387",
                "price"     => "0.529",
            ],
            [
                "country"   => "Botswana",
                "cn_name"   => "博茨瓦纳",
                "code"      => "BW",
                "dial_code" => "267",
                "price"     => "0.293",
            ],
            [
                "country"   => "Brazil",
                "cn_name"   => "巴西",
                "code"      => "BR",
                "dial_code" => "55",
                "price"     => "0.114",
            ],
            [
                "country"   => "Brunei",
                "cn_name"   => "文莱",
                "code"      => "BN",
                "dial_code" => "673",
                "price"     => "0.118",
            ],
            [
                "country"   => "Bulgaria",
                "cn_name"   => "保加利亚",
                "code"      => "BG",
                "dial_code" => "359",
                "price"     => "0.506",
            ],
            [
                "country"   => "Burkina Faso",
                "cn_name"   => "布基纳法索",
                "code"      => "BF",
                "dial_code" => "226",
                "price"     => "0.506",
            ],
            [
                "country"   => "Burundi",
                "cn_name"   => "布隆迪",
                "code"      => "BI",
                "dial_code" => "257",
                "price"     => "0.263",
            ],
            [
                "country"   => "Cambodia",
                "cn_name"   => "柬埔寨",
                "code"      => "KH",
                "dial_code" => "855",
                "price"     => "0.308",
            ],
            [
                "country"   => "Cameroon",
                "cn_name"   => "喀麦隆",
                "code"      => "CM",
                "dial_code" => "237",
                "price"     => "0.376",
            ],
            [
                "country"   => "Cape Verde",
                "cn_name"   => "开普",
                "code"      => "CV",
                "dial_code" => "238",
                "price"     => "0.596",
            ],
            [
                "country"   => "Cayman Islands",
                "cn_name"   => "开曼群岛",
                "code"      => "KY",
                "dial_code" => "1345",
                "price"     => "0.317",
            ],
            [
                "country"   => "Central African Republic",
                "cn_name"   => "中非共和国",
                "code"      => "CF",
                "dial_code" => "236",
                "price"     => "0.434",
            ],
            [
                "country"   => "Chad",
                "cn_name"   => "乍得",
                "code"      => "TD",
                "dial_code" => "235",
                "price"     => "0.393",
            ],
            [
                "country"   => "Chile",
                "cn_name"   => "智利",
                "code"      => "CL",
                "dial_code" => "56",
                "price"     => "0.392",
            ],
            [
                "country"   => "Colombia",
                "cn_name"   => "哥伦比亚",
                "code"      => "CO",
                "dial_code" => "57",
                "price"     => "0.180",
            ],
            [
                "country"   => "Comoros",
                "cn_name"   => "科摩罗",
                "code"      => "KM",
                "dial_code" => "269",
                "price"     => "0.270",
            ],
            [
                "country"   => "Cook Islands",
                "cn_name"   => "库克群岛",
                "code"      => "CK",
                "dial_code" => "682",
                "price"     => "0.276",
            ],
            [
                "country"   => "Costa Rica",
                "cn_name"   => "哥斯达黎加",
                "code"      => "CR",
                "dial_code" => "506",
                "price"     => "0.328",
            ],
            [
                "country"   => "Croatia",
                "cn_name"   => "克罗地亚",
                "code"      => "HR",
                "dial_code" => "385",
                "price"     => "0.549",
            ],
            [
                "country"   => "Cuba",
                "cn_name"   => "古巴",
                "code"      => "CU",
                "dial_code" => "53",
                "price"     => "0.504",
            ],
            [
                "country"   => "Curacao",
                "cn_name"   => "库拉索",
                "code"      => "CW",
                "dial_code" => "599",
                "price"     => "0.443",
            ],
            [
                "country"   => "Cyprus",
                "cn_name"   => "塞浦路斯",
                "code"      => "CY",
                "dial_code" => "357",
                "price"     => "0.254",
            ],
            [
                "country"   => "Czech",
                "cn_name"   => "捷克",
                "code"      => "CZ",
                "dial_code" => "420",
                "price"     => "0.433",
            ],
            [
                "country"   => "Democratic Republic of the Congo",
                "cn_name"   => "刚果民主共和国",
                "code"      => "CD",
                "dial_code" => "243",
                "price"     => "0.336",
            ],
            [
                "country"   => "Denmark",
                "cn_name"   => "丹麦",
                "code"      => "DK",
                "dial_code" => "45",
                "price"     => "0.365",
            ],
            [
                "country"   => "Djibouti",
                "cn_name"   => "吉布提",
                "code"      => "DJ",
                "dial_code" => "253",
                "price"     => "0.759",
            ],
            [
                "country"   => "Dominica",
                "cn_name"   => "多米尼加",
                "code"      => "DM",
                "dial_code" => "1767",
                "price"     => "0.377",
            ],
            [
                "country"   => "Dominican Republic",
                "cn_name"   => "多米尼加共和国",
                "code"      => "DO",
                "dial_code" => "1809",
                "price"     => "0.530",
            ],
            [
                "country"   => "Ecuador",
                "cn_name"   => "厄瓜多尔",
                "code"      => "EC",
                "dial_code" => "593",
                "price"     => "0.733",
            ],
            [
                "country"   => "Egypt",
                "cn_name"   => "埃及",
                "code"      => "EG",
                "dial_code" => "20",
                "price"     => "0.338",
            ],
            [
                "country"   => "El Salvador",
                "cn_name"   => "萨尔瓦多",
                "code"      => "SV",
                "dial_code" => "503",
                "price"     => "0.394",
            ],
            [
                "country"   => "Equatorial Guinea",
                "cn_name"   => "赤道几内亚",
                "code"      => "GQ",
                "dial_code" => "240",
                "price"     => "0.460",
            ],
            [
                "country"   => "Eritrea",
                "cn_name"   => "厄立特里亚",
                "code"      => "ER",
                "dial_code" => "291",
                "price"     => "0.096",
            ],
            [
                "country"   => "Estonia",
                "cn_name"   => "爱沙尼亚",
                "code"      => "EE",
                "dial_code" => "372",
                "price"     => "0.782",
            ],
            [
                "country"   => "Ethiopia",
                "cn_name"   => "埃塞俄比亚",
                "code"      => "ET",
                "dial_code" => "251",
                "price"     => "0.230",
            ],
            [
                "country"   => "Faroe Islands",
                "cn_name"   => "法罗群岛",
                "code"      => "FO",
                "dial_code" => "298",
                "price"     => "0.109",
            ],
            [
                "country"   => "Fiji",
                "cn_name"   => "斐济",
                "code"      => "FJ",
                "dial_code" => "679",
                "price"     => "0.252",
            ],
            [
                "country"   => "Finland",
                "cn_name"   => "芬兰",
                "code"      => "FI",
                "dial_code" => "358",
                "price"     => "0.953",
            ],
            [
                "country"   => "France",
                "cn_name"   => "法国",
                "code"      => "FR",
                "dial_code" => "33",
                "price"     => "0.532",
            ],
            [
                "country"   => "French Guiana",
                "cn_name"   => "法属圭亚那",
                "code"      => "GF",
                "dial_code" => "594",
                "price"     => "0.600",
            ],
            [
                "country"   => "French Polynesia",
                "cn_name"   => "法属波利尼西亚",
                "code"      => "PF",
                "dial_code" => "689",
                "price"     => "0.855",
            ],
            [
                "country"   => "Gabon",
                "cn_name"   => "加蓬",
                "code"      => "GA",
                "dial_code" => "241",
                "price"     => "0.355",
            ],
            [
                "country"   => "Gambia",
                "cn_name"   => "冈比亚",
                "code"      => "GM",
                "dial_code" => "220",
                "price"     => "0.270",
            ],
            [
                "country"   => "Georgia",
                "cn_name"   => "格鲁吉亚",
                "code"      => "GE",
                "dial_code" => "995",
                "price"     => "0.488",
            ],
            [
                "country"   => "Germany",
                "cn_name"   => "德国",
                "code"      => "DE",
                "dial_code" => "49",
                "price"     => "0.595",
            ],
            [
                "country"   => "Ghana",
                "cn_name"   => "加纳",
                "code"      => "GH",
                "dial_code" => "233",
                "price"     => "0.086",
            ],
            [
                "country"   => "Gibraltar",
                "cn_name"   => "直布罗陀",
                "code"      => "GI",
                "dial_code" => "350",
                "price"     => "0.138",
            ],
            [
                "country"   => "Greece",
                "cn_name"   => "希腊",
                "code"      => "GR",
                "dial_code" => "30",
                "price"     => "0.601",
            ],
            [
                "country"   => "Greenland",
                "cn_name"   => "格陵兰岛",
                "code"      => "GL",
                "dial_code" => "299",
                "price"     => "0.084",
            ],
            [
                "country"   => "Grenada",
                "cn_name"   => "格林纳达",
                "code"      => "GD",
                "dial_code" => "1473",
                "price"     => "0.335",
            ],
            [
                "country"   => "Guadeloupe",
                "cn_name"   => "瓜德罗普岛",
                "code"      => "GP",
                "dial_code" => "590",
                "price"     => "1.901",
            ],
            [
                "country"   => "Guam",
                "cn_name"   => "关岛",
                "code"      => "GU",
                "dial_code" => "1671",
                "price"     => "0.120",
            ],
            [
                "country"   => "Guatemala",
                "cn_name"   => "瓜地马拉",
                "code"      => "GT",
                "dial_code" => "502",
                "price"     => "0.288",
            ],
            [
                "country"   => "Guinea",
                "cn_name"   => "几内亚",
                "code"      => "GN",
                "dial_code" => "224",
                "price"     => "0.606",
            ],
            [
                "country"   => "Guinea-Bissau",
                "cn_name"   => "几内亚比绍共和国",
                "code"      => "GW",
                "dial_code" => "245",
                "price"     => "0.671",
            ],
            [
                "country"   => "Guyana",
                "cn_name"   => "圭亚那",
                "code"      => "GY",
                "dial_code" => "592",
                "price"     => "0.498",
            ],
            [
                "country"   => "Haiti",
                "cn_name"   => "海地",
                "code"      => "HT",
                "dial_code" => "509",
                "price"     => "0.582",
            ],
            [
                "country"   => "Honduras",
                "cn_name"   => "洪都拉斯",
                "code"      => "HN",
                "dial_code" => "504",
                "price"     => "0.442",
            ],
            [
                "country"   => "Hong Kong",
                "cn_name"   => "中国香港",
                "code"      => "HK",
                "dial_code" => "852",
                "price"     => "0.268",
            ],
            [
                "country"   => "Hungary",
                "cn_name"   => "匈牙利",
                "code"      => "HU",
                "dial_code" => "36",
                "price"     => "0.821",
            ],
            [
                "country"   => "Iceland",
                "cn_name"   => "冰岛",
                "code"      => "IS",
                "dial_code" => "354",
                "price"     => "0.228",
            ],
            [
                "country"   => "India",
                "cn_name"   => "印度",
                "code"      => "IN",
                "dial_code" => "91",
                "price"     => "0.044",
            ],
            [
                "country"   => "Indonesia",
                "cn_name"   => "印度尼西亚",
                "code"      => "ID",
                "dial_code" => "62",
                "price"     => "0.350",
            ],
            [
                "country"   => "Iran",
                "cn_name"   => "伊朗",
                "code"      => "IR",
                "dial_code" => "98",
                "price"     => "0.231",
            ],
            [
                "country"   => "Iraq",
                "cn_name"   => "伊拉克",
                "code"      => "IQ",
                "dial_code" => "964",
                "price"     => "0.600",
            ],
            [
                "country"   => "Ireland",
                "cn_name"   => "爱尔兰",
                "code"      => "IE",
                "dial_code" => "353",
                "price"     => "0.565",
            ],
            [
                "country"   => "Israel",
                "cn_name"   => "以色列",
                "code"      => "IL",
                "dial_code" => "972",
                "price"     => "0.093",
            ],
            [
                "country"   => "Italy",
                "cn_name"   => "意大利",
                "code"      => "IT",
                "dial_code" => "39",
                "price"     => "0.565",
            ],
            [
                "country"   => "Ivory Coast",
                "cn_name"   => "象牙海岸",
                "code"      => "CI",
                "dial_code" => "225",
                "price"     => "0.562",
            ],
            [
                "country"   => "Jamaica",
                "cn_name"   => "牙买加",
                "code"      => "JM",
                "dial_code" => "1876",
                "price"     => "0.257",
            ],
            [
                "country"   => "Japan",
                "cn_name"   => "日本",
                "code"      => "JP",
                "dial_code" => "81",
                "price"     => "0.514",
            ],
            [
                "country"   => "Jordan",
                "cn_name"   => "约旦",
                "code"      => "JO",
                "dial_code" => "962",
                "price"     => "0.600",
            ],
            [
                "country"   => "Kenya",
                "cn_name"   => "肯尼亚",
                "code"      => "KE",
                "dial_code" => "254",
                "price"     => "0.206",
            ],
            [
                "country"   => "Kiribati",
                "cn_name"   => "基里巴斯",
                "code"      => "KI",
                "dial_code" => "686",
                "price"     => "0.350",
            ],
            [
                "country"   => "Kuwait",
                "cn_name"   => "科威特",
                "code"      => "KW",
                "dial_code" => "965",
                "price"     => "0.355",
            ],
            [
                "country"   => "Kyrgyzstan",
                "cn_name"   => "吉尔吉斯斯坦",
                "code"      => "KG",
                "dial_code" => "996",
                "price"     => "0.560",
            ],
            [
                "country"   => "Laos",
                "cn_name"   => "老挝",
                "code"      => "LA",
                "dial_code" => "856",
                "price"     => "0.280",
            ],
            [
                "country"   => "Latvia",
                "cn_name"   => "拉脱维亚",
                "code"      => "LV",
                "dial_code" => "371",
                "price"     => "0.398",
            ],
            [
                "country"   => "Lebanon",
                "cn_name"   => "黎巴嫩",
                "code"      => "LB",
                "dial_code" => "961",
                "price"     => "0.240",
            ],
            [
                "country"   => "Lesotho",
                "cn_name"   => "莱索托",
                "code"      => "LS",
                "dial_code" => "266",
                "price"     => "0.404",
            ],
            [
                "country"   => "Liberia",
                "cn_name"   => "利比里亚",
                "code"      => "LR",
                "dial_code" => "231",
                "price"     => "0.464",
            ],
            [
                "country"   => "Libya",
                "cn_name"   => "利比亚",
                "code"      => "LY",
                "dial_code" => "218",
                "price"     => "0.282",
            ],
            [
                "country"   => "Liechtenstein",
                "cn_name"   => "列支敦士登",
                "code"      => "LI",
                "dial_code" => "423",
                "price"     => "0.204",
            ],
            [
                "country"   => "Lithuania",
                "cn_name"   => "立陶宛",
                "code"      => "LT",
                "dial_code" => "370",
                "price"     => "0.287",
            ],
            [
                "country"   => "Luxembourg",
                "cn_name"   => "卢森堡",
                "code"      => "LU",
                "dial_code" => "352",
                "price"     => "0.107",
            ],
            [
                "country"   => "Macau",
                "cn_name"   => "中国澳门",
                "code"      => "MO",
                "dial_code" => "853",
                "price"     => "0.183",
            ],
            [
                "country"   => "Macedonia",
                "cn_name"   => "马其顿",
                "code"      => "MK",
                "dial_code" => "389",
                "price"     => "0.208",
            ],
            [
                "country"   => "Madagascar",
                "cn_name"   => "马达加斯加",
                "code"      => "MG",
                "dial_code" => "261",
                "price"     => "0.504",
            ],
            [
                "country"   => "Malawi",
                "cn_name"   => "马拉维",
                "code"      => "MW",
                "dial_code" => "265",
                "price"     => "0.334",
            ],
            [
                "country"   => "Malaysia",
                "cn_name"   => "马来西亚",
                "code"      => "MY",
                "dial_code" => "60",
                "price"     => "0.228",
            ],
            [
                "country"   => "Maldives",
                "cn_name"   => "马尔代夫",
                "code"      => "MV",
                "dial_code" => "960",
                "price"     => "0.234",
            ],
            [
                "country"   => "Mali",
                "cn_name"   => "马里",
                "code"      => "ML",
                "dial_code" => "223",
                "price"     => "1.322",
            ],
            [
                "country"   => "Malta",
                "cn_name"   => "马耳他",
                "code"      => "MT",
                "dial_code" => "356",
                "price"     => "0.125",
            ],
            [
                "country"   => "Martinique",
                "cn_name"   => "马提尼克",
                "code"      => "MQ",
                "dial_code" => "596",
                "price"     => "0.600",
            ],
            [
                "country"   => "Mauritania",
                "cn_name"   => "毛里塔尼亚",
                "code"      => "MR",
                "dial_code" => "222",
                "price"     => "0.549",
            ],
            [
                "country"   => "Mauritius",
                "cn_name"   => "毛里求斯",
                "code"      => "MU",
                "dial_code" => "230",
                "price"     => "0.282",
            ],
            [
                "country"   => "Mayotte",
                "cn_name"   => "马约特",
                "code"      => "YT",
                "dial_code" => "269",
                "price"     => "0.504",
            ],
            [
                "country"   => "Mexico",
                "cn_name"   => "墨西哥",
                "code"      => "MX",
                "dial_code" => "52",
                "price"     => "0.145",
            ],
            [
                "country"   => "Moldova",
                "cn_name"   => "摩尔多瓦",
                "code"      => "MD",
                "dial_code" => "373",
                "price"     => "0.654",
            ],
            [
                "country"   => "Monaco",
                "cn_name"   => "摩纳哥",
                "code"      => "MC",
                "dial_code" => "377",
                "price"     => "0.546",
            ],
            [
                "country"   => "Mongolia",
                "cn_name"   => "蒙古",
                "code"      => "MN",
                "dial_code" => "976",
                "price"     => "0.569",
            ],
            [
                "country"   => "Montenegro",
                "cn_name"   => "黑山",
                "code"      => "ME",
                "dial_code" => "382",
                "price"     => "0.246",
            ],
            [
                "country"   => "Montserrat",
                "cn_name"   => "蒙特塞拉特岛",
                "code"      => "MS",
                "dial_code" => "1664",
                "price"     => "0.393",
            ],
            [
                "country"   => "Morocco",
                "cn_name"   => "摩洛哥",
                "code"      => "MA",
                "dial_code" => "212",
                "price"     => "0.467",
            ],
            [
                "country"   => "Mozambique",
                "cn_name"   => "莫桑比克",
                "code"      => "MZ",
                "dial_code" => "258",
                "price"     => "0.216",
            ],
            [
                "country"   => "Myanmar",
                "cn_name"   => "缅甸",
                "code"      => "MM",
                "dial_code" => "95",
                "price"     => "0.560",
            ],
            [
                "country"   => "Namibia",
                "cn_name"   => "纳米比亚",
                "code"      => "NA",
                "dial_code" => "264",
                "price"     => "0.366",
            ],
            [
                "country"   => "Nepal",
                "cn_name"   => "尼泊尔",
                "code"      => "NP",
                "dial_code" => "977",
                "price"     => "0.706",
            ],
            [
                "country"   => "Netherlands",
                "cn_name"   => "荷兰",
                "code"      => "NL",
                "dial_code" => "31",
                "price"     => "1.073",
            ],
            [
                "country"   => "New Caledonia",
                "cn_name"   => "新喀里多尼亚",
                "code"      => "NC",
                "dial_code" => "687",
                "price"     => "1.556",
            ],
            [
                "country"   => "New Zealand",
                "cn_name"   => "新西兰",
                "code"      => "NZ",
                "dial_code" => "64",
                "price"     => "0.600",
            ],
            [
                "country"   => "Nicaragua",
                "cn_name"   => "尼加拉瓜",
                "code"      => "NI",
                "dial_code" => "505",
                "price"     => "0.498",
            ],
            [
                "country"   => "Niger",
                "cn_name"   => "尼日尔",
                "code"      => "NE",
                "dial_code" => "227",
                "price"     => "0.528",
            ],
            [
                "country"   => "Nigeria",
                "cn_name"   => "尼日利亚",
                "code"      => "NG",
                "dial_code" => "234",
                "price"     => "0.269",
            ],
            [
                "country"   => "Norway",
                "cn_name"   => "挪威",
                "code"      => "NO",
                "dial_code" => "47",
                "price"     => "0.538",
            ],
            [
                "country"   => "Oman",
                "cn_name"   => "阿曼",
                "code"      => "OM",
                "dial_code" => "968",
                "price"     => "0.515",
            ],
            [
                "country"   => "Pakistan",
                "cn_name"   => "巴基斯坦",
                "code"      => "PK",
                "dial_code" => "92",
                "price"     => "0.186",
            ],
            [
                "country"   => "Palau",
                "cn_name"   => "帕劳",
                "code"      => "PW",
                "dial_code" => "680",
                "price"     => "0.587",
            ],
            [
                "country"   => "Palestine",
                "cn_name"   => "巴勒斯坦",
                "code"      => "BL",
                "dial_code" => "970",
                "price"     => "0.221",
            ],
            [
                "country"   => "Panama",
                "cn_name"   => "巴拿马",
                "code"      => "PA",
                "dial_code" => "507",
                "price"     => "0.496",
            ],
            [
                "country"   => "Papua New Guinea",
                "cn_name"   => "巴布亚新几内亚",
                "code"      => "PG",
                "dial_code" => "675",
                "price"     => "0.475",
            ],
            [
                "country"   => "Paraguay",
                "cn_name"   => "巴拉圭",
                "code"      => "PY",
                "dial_code" => "595",
                "price"     => "0.210",
            ],
            [
                "country"   => "Peru",
                "cn_name"   => "秘鲁",
                "code"      => "PE",
                "dial_code" => "51",
                "price"     => "0.346",
            ],
            [
                "country"   => "Philippines",
                "cn_name"   => "菲律宾",
                "code"      => "PH",
                "dial_code" => "63",
                "price"     => "0.109",
            ],
            [
                "country"   => "Poland",
                "cn_name"   => "波兰",
                "code"      => "PL",
                "dial_code" => "48",
                "price"     => "0.282",
            ],
            [
                "country"   => "Portugal",
                "cn_name"   => "葡萄牙",
                "code"      => "PT",
                "dial_code" => "351",
                "price"     => "0.358",
            ],
            [
                "country"   => "Puerto Rico",
                "cn_name"   => "波多黎各",
                "code"      => "PR",
                "dial_code" => "1787",
                "price"     => "0.387",
            ],
            [
                "country"   => "Qatar",
                "cn_name"   => "卡塔尔",
                "code"      => "QA",
                "dial_code" => "974",
                "price"     => "0.254",
            ],
            [
                "country"   => "Republic Of The Congo",
                "cn_name"   => "刚果共和国",
                "code"      => "CG",
                "dial_code" => "242",
                "price"     => "0.496",
            ],
            [
                "country"   => "Réunion Island",
                "cn_name"   => "留尼汪",
                "code"      => "RE",
                "dial_code" => "262",
                "price"     => "1.446",
            ],
            [
                "country"   => "Romania",
                "cn_name"   => "罗马尼亚",
                "code"      => "RO",
                "dial_code" => "40",
                "price"     => "0.510",
            ],
            [
                "country"   => "Russia / Kazakhstan",
                "cn_name"   => "俄罗斯 / 哈萨克斯坦",
                "code"      => "RU",
                "dial_code" => "7",
                "price"     => "0.350",
            ],
//            [
//                "country"   => "Kazakhstan",
//                "cn_name"   => "哈萨克斯坦",
//                "code"      => "KZ",
//                "dial_code" => "7",
//                "price"     => "0.504",
//            ],
            [
                "country"   => "Rwanda",
                "cn_name"   => "卢旺达",
                "code"      => "RW",
                "dial_code" => "250",
                "price"     => "0.183",
            ],
            [
                "country"   => "Saint Kitts and Nevis",
                "cn_name"   => "圣基茨和尼维斯",
                "code"      => "KN",
                "dial_code" => "1869",
                "price"     => "0.518",
            ],
            [
                "country"   => "Saint Lucia",
                "cn_name"   => "圣露西亚",
                "code"      => "LC",
                "dial_code" => "1758",
                "price"     => "0.284",
            ],
            [
                "country"   => "Saint Pierre and Miquelon",
                "cn_name"   => "圣彼埃尔和密克隆岛",
                "code"      => "PM",
                "dial_code" => "508",
                "price"     => "0.504",
            ],
            [
                "country"   => "Saint Vincent and The Grenadines",
                "cn_name"   => "圣文森特和格林纳丁斯",
                "code"      => "VC",
                "dial_code" => "1784",
                "price"     => "0.425",
            ],
            [
                "country"   => "Samoa",
                "cn_name"   => "萨摩亚",
                "code"      => "WS",
                "dial_code" => "685",
                "price"     => "0.264",
            ],
            [
                "country"   => "San Marino",
                "cn_name"   => "圣马力诺",
                "code"      => "SM",
                "dial_code" => "378",
                "price"     => "0.402",
            ],
            [
                "country"   => "Sao Tome and Principe",
                "cn_name"   => "圣多美和普林西比",
                "code"      => "ST",
                "dial_code" => "239",
                "price"     => "0.788",
            ],
            [
                "country"   => "Saudi Arabia",
                "cn_name"   => "沙特阿拉伯",
                "code"      => "SA",
                "dial_code" => "966",
                "price"     => "0.245",
            ],
            [
                "country"   => "Senegal",
                "cn_name"   => "塞内加尔",
                "code"      => "SN",
                "dial_code" => "221",
                "price"     => "0.493",
            ],
            [
                "country"   => "Serbia",
                "cn_name"   => "塞尔维亚",
                "code"      => "RS",
                "dial_code" => "381",
                "price"     => "0.274",
            ],
            [
                "country"   => "Seychelles",
                "cn_name"   => "塞舌尔",
                "code"      => "SC",
                "dial_code" => "248",
                "price"     => "0.442",
            ],
            [
                "country"   => "Sierra Leone",
                "cn_name"   => "塞拉利昂",
                "code"      => "SL",
                "dial_code" => "232",
                "price"     => "0.254",
            ],
            [
                "country"   => "Singapore",
                "cn_name"   => "新加坡",
                "code"      => "SG",
                "dial_code" => "65",
                "price"     => "0.261",
            ],
            [
                "country"   => "Saint Maarten (Dutch Part)",
                "cn_name"   => "圣马丁岛（荷兰部分）",
                "code"      => "SX",
                "dial_code" => "1721",
                "price"     => "0.527",
            ],
            [
                "country"   => "Slovakia",
                "cn_name"   => "斯洛伐克",
                "code"      => "SK",
                "dial_code" => "421",
                "price"     => "0.685",
            ],
            [
                "country"   => "Slovenia",
                "cn_name"   => "斯洛文尼亚",
                "code"      => "SI",
                "dial_code" => "386",
                "price"     => "0.263",
            ],
            [
                "country"   => "Solomon Islands",
                "cn_name"   => "所罗门群岛",
                "code"      => "SB",
                "dial_code" => "677",
                "price"     => "0.208",
            ],
            [
                "country"   => "Somalia",
                "cn_name"   => "索马里",
                "code"      => "SO",
                "dial_code" => "252",
                "price"     => "0.599",
            ],
            [
                "country"   => "South Africa",
                "cn_name"   => "南非",
                "code"      => "ZA",
                "dial_code" => "27",
                "price"     => "0.219",
            ],
            [
                "country"   => "South Korea",
                "cn_name"   => "韩国",
                "code"      => "KR",
                "dial_code" => "82",
                "price"     => "0.119",
            ],
            [
                "country"   => "Spain",
                "cn_name"   => "西班牙",
                "code"      => "ES",
                "dial_code" => "34",
                "price"     => "0.583",
            ],
            [
                "country"   => "Sri Lanka",
                "cn_name"   => "斯里兰卡",
                "code"      => "LK",
                "dial_code" => "94",
                "price"     => "0.416",
            ],
            [
                "country"   => "Sudan",
                "cn_name"   => "苏丹",
                "code"      => "SD",
                "dial_code" => "249",
                "price"     => "0.345",
            ],
            [
                "country"   => "Suriname",
                "cn_name"   => "苏里南",
                "code"      => "SR",
                "dial_code" => "597",
                "price"     => "0.238",
            ],
            [
                "country"   => "Swaziland",
                "cn_name"   => "斯威士兰",
                "code"      => "SZ",
                "dial_code" => "268",
                "price"     => "0.469",
            ],
            [
                "country"   => "Sweden",
                "cn_name"   => "瑞典",
                "code"      => "SE",
                "dial_code" => "46",
                "price"     => "0.667",
            ],
            [
                "country"   => "Switzerland",
                "cn_name"   => "瑞士",
                "code"      => "CH",
                "dial_code" => "41",
                "price"     => "0.488",
            ],
            [
                "country"   => "Syria",
                "cn_name"   => "叙利亚",
                "code"      => "SY",
                "dial_code" => "963",
                "price"     => "0.504",
            ],
            [
                "country"   => "Taiwan",
                "cn_name"   => "中国台湾",
                "code"      => "TW",
                "dial_code" => "886",
                "price"     => "0.266",
            ],
            [
                "country"   => "Tajikistan",
                "cn_name"   => "塔吉克斯坦",
                "code"      => "TJ",
                "dial_code" => "992",
                "price"     => "0.600",
            ],
            [
                "country"   => "Tanzania",
                "cn_name"   => "坦桑尼亚",
                "code"      => "TZ",
                "dial_code" => "255",
                "price"     => "0.319",
            ],
            [
                "country"   => "Thailand",
                "cn_name"   => "泰国",
                "code"      => "TH",
                "dial_code" => "66",
                "price"     => "0.131",
            ],
            [
                "country"   => "Timor-Leste",
                "cn_name"   => "东帝汶",
                "code"      => "TL",
                "dial_code" => "670",
                "price"     => "0.450",
            ],
            [
                "country"   => "Togo",
                "cn_name"   => "多哥",
                "code"      => "TG",
                "dial_code" => "228",
                "price"     => "0.239",
            ],
            [
                "country"   => "Tonga",
                "cn_name"   => "汤加",
                "code"      => "TO",
                "dial_code" => "676",
                "price"     => "0.255",
            ],
            [
                "country"   => "Trinidad and Tobago",
                "cn_name"   => "特立尼达和多巴哥",
                "code"      => "TT",
                "dial_code" => "1868",
                "price"     => "0.263",
            ],
            [
                "country"   => "Tunisia",
                "cn_name"   => "突尼斯",
                "code"      => "TN",
                "dial_code" => "216",
                "price"     => "0.861",
            ],
            [
                "country"   => "Turkey",
                "cn_name"   => "土耳其",
                "code"      => "TR",
                "dial_code" => "90",
                "price"     => "0.118",
            ],
            [
                "country"   => "Turkmenistan",
                "cn_name"   => "土库曼斯坦",
                "code"      => "TM",
                "dial_code" => "993",
                "price"     => "0.403",
            ],
            [
                "country"   => "Turks and Caicos Islands",
                "cn_name"   => "特克斯和凯科斯群岛",
                "code"      => "TC",
                "dial_code" => "1649",
                "price"     => "0.282",
            ],
            [
                "country"   => "Uganda",
                "cn_name"   => "乌干达",
                "code"      => "UG",
                "dial_code" => "256",
                "price"     => "0.533",
            ],
            [
                "country"   => "Ukraine",
                "cn_name"   => "乌克兰",
                "code"      => "UA",
                "dial_code" => "380",
                "price"     => "0.504",
            ],
            [
                "country"   => "United Arab Emirates",
                "cn_name"   => "阿拉伯联合酋长国",
                "code"      => "AE",
                "dial_code" => "971",
                "price"     => "0.285",
            ],
            [
                "country"   => "United Kingdom",
                "cn_name"   => "英国",
                "code"      => "GB",
                "dial_code" => "44",
                "price"     => "0.280",
            ],
            [
                "country"   => "United States / Canada",
                "cn_name"   => "美国 / 加拿大",
                "code"      => "US",
                "dial_code" => "1",
                "price"     => "0.053",
            ],
//            [
//                "country"   => "Canada",
//                "cn_name"   => "加拿大",
//                "code"      => "CA",
//                "dial_code" => "1",
//                "price"     => "0.053",
//            ],
            [
                "country"   => "Uruguay",
                "cn_name"   => "乌拉圭",
                "code"      => "UY",
                "dial_code" => "598",
                "price"     => "0.570",
            ],
            [
                "country"   => "Uzbekistan",
                "cn_name"   => "乌兹别克斯坦",
                "code"      => "UZ",
                "dial_code" => "998",
                "price"     => "0.968",
            ],
            [
                "country"   => "Vanuatu",
                "cn_name"   => "瓦努阿图",
                "code"      => "VU",
                "dial_code" => "678",
                "price"     => "0.419",
            ],
            [
                "country"   => "Venezuela",
                "cn_name"   => "委内瑞拉",
                "code"      => "VE",
                "dial_code" => "58",
                "price"     => "0.216",
            ],
            [
                "country"   => "Vietnam",
                "cn_name"   => "越南",
                "code"      => "VN",
                "dial_code" => "84",
                "price"     => "0.279",
            ],
            [
                "country"   => "Virgin Islands, British",
                "cn_name"   => "英属处女群岛",
                "code"      => "VG",
                "dial_code" => "1340",
                "price"     => "0.290",
            ],
            [
                "country"   => "Virgin Islands, US",
                "cn_name"   => "美属维尔京群岛",
                "code"      => "VI",
                "dial_code" => "1284",
                "price"     => "0.329",
            ],
            [
                "country"   => "Yemen",
                "cn_name"   => "也门",
                "code"      => "YE",
                "dial_code" => "967",
                "price"     => "0.195",
            ],
            [
                "country"   => "Zambia",
                "cn_name"   => "赞比亚",
                "code"      => "ZM",
                "dial_code" => "260",
                "price"     => "0.335",
            ],
            [
                "country"   => "Zimbabwe",
                "cn_name"   => "津巴布韦",
                "code"      => "ZW",
                "dial_code" => "263",
                "price"     => "0.200"
            ]
        ];
    }
}